package cn.ffcs.uec.staff.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import lombok.Getter;
import lombok.Setter;
import cn.ffcs.uec.organization.model.UecOrgOrgs;
import cn.ffcs.uom.common.constants.BaseUnitConstants;
import cn.ffcs.uom.common.model.DefaultDaoFactory;
import cn.ffcs.uom.common.model.UomEntity;
import cn.ffcs.uom.common.util.StrUtil;
/**
 * 离退情况
 *
 */
public class UecRetire extends UomEntity implements Serializable {

	private static final long serialVersionUID = -1050455579105531933L;

	/**
	 * 离退情况主键
	 * 
	 */
	public Long getRetireId() {
		return super.getId();
	}

	public void setRetireId(Long retireId) {
		super.setId(retireId);
	}

	/**
	 * 员工标识
	 */
	@Getter
	@Setter
	private Long staffId;
	/**
	 * 人员基本信息
	 */
	@Getter
	@Setter
    private String pkPsndoc;
	/**
	 * 账期
	 */
	@Getter
	@Setter
	private Long monthId;
	/**
	 * 主键
	 */
	@Getter
	@Setter
    private String pkPsndocSub;
	/**
	 * 创建时间
	 */
	@Getter
	@Setter
    private String creationtime;
	/**
	 * 创建人
	 */
	@Getter
	@Setter
    private String creator;
	/**
	 * 修改时间
	 */
	@Getter
	@Setter
    private String modifiedtime;
	/**
	 * 修改人
	 */
	@Getter
	@Setter
    private String modifier;
	/**
	 * 生活补贴
	 */
	@Getter
	@Setter
    private Long allowance;
	/**
	 * 离退待遇起始日期
	 */
	@Getter
	@Setter
    private String begindate;
	/**
	 * 离退待遇终止日期
	 */
	@Getter
	@Setter
    private String enddate;
	/**
	 * 离退前岗位
	 */
	@Getter
	@Setter
    private String glbdef1;
	/**
	 * 批准离退日期
	 */
	@Getter
	@Setter
    private String glbdef2;
	/**
	 * 联系人电话
	 */
	@Getter
	@Setter
    private String glbdef4;
	/**
	 * 离退休人员住址
	 */
	@Getter
	@Setter
    private String glbdef5;
	/**
	 * 其它费用
	 */
	@Getter
	@Setter
    private Long otherfee;
	/**
	 * 离退休金
	 */
	@Getter
	@Setter
    private Long pension;
	/**
	 * 期间
	 */
	@Getter
	@Setter
    private String period;
	/**
	 * 所属组织
	 */
	@Getter
	@Setter
    private String pkOrg;
	/**
	 * 离职前岗位
	 */
	@Getter
	@Setter
    private String glbdef6;
	/**
	 * 离退前职务级别
	 */
	@Getter
	@Setter
    private String glbdef7;
	/**
	 * 离退前专业职务等级
	 */
	@Getter
	@Setter
    private String glbdef8;
	/**
	 * 离退前身份
	 */
	@Getter
	@Setter
    private String glbdef9;
	/**
	 * 是否原军队转业干部
	 */
	@Getter
	@Setter
    private String glbdef10;
	/**
	 * 删除标志
	 */
	@Getter
	@Setter
    private Long dr;
	/**
	 * 最近记录标志
	 */
	@Getter
	@Setter
    private String lastflag;
	/**
	 * 外包人员类型
	 */
	@Getter
	@Setter
	private String nmStaffType;

	public static UecRetire newInstance() {
		return new UecRetire();
	}
	
	public String getGlbdef10Name() {
		if (!StrUtil.isNullOrEmpty(this.getGlbdef10())) {
			if ("Y".equals(this.getGlbdef10())) {
				return "是";
			}
			if ("N".equals(this.getGlbdef10())) {
				return "否";
			}
		}
		return "";
	}
	/**
	 * 最近标志
	 * @return
	 */
	public String getLastflagName() {
		if (!StrUtil.isNullOrEmpty(this.getGlbdef10())) {
			if ("Y".equals(this.getLastflag())) {
				return "是";
			}
			if ("N".equals(this.getGlbdef10())) {
				return "否";
			}
		}
		return "";
	}
	/**
	 * 获取组织--pkorg
	 */
	public String getPkorgName() {
		if (!StrUtil.isNullOrEmpty(this.getPkOrg())) {
			String sql = " SELECT * FROM  UEC_ORG_ORGS T WHERE T.STATUS_CD = ? AND T.PK_ORG = ? ";
			List<Object> params = new ArrayList<Object>();
			params.add(BaseUnitConstants.ENTT_STATE_ACTIVE);
			params.add(this.getPkOrg());
			List<UecOrgOrgs> list = DefaultDaoFactory.getDefaultDao().jdbcFindList(sql, params, UecOrgOrgs.class);
			if (list != null && list.size() > 0) {
				return list.get(0).getName();
			}
		}
		return "";
	}
}
